此函数使你可以将屏幕区域的 “触摸” 映射到键盘事件。这意味着,一旦你为虚拟键指定了区域,该区域上的所有触摸都将触发与你映射到该区域的键对应的键盘事件。你也可以将定义的每个虚拟键分配给变量,然后可以在其他虚拟键函数中使用它们来显示、隐藏和删除它们。这些键在 每个房间 的基础上分配,并且在更换房间时将由 GameMaker Studio 2 自动删除。
虚拟键的实际位置基于 屏幕 位置而不是房间位置,因此 x / y 值在屏幕上是绝对的。这意味着你无需担心视图的使用或相对房间坐标,并且可以简单地绘制你的按键精灵并在物体的 绘制 GUI 事件 中定义虚拟键。
virtual_key_add(x, y, w, h, keycode);
参数 | 描述 |
---|---|
x | 屏幕上 虚拟键的 x 坐标(左侧) |
y | 屏幕上 虚拟键的 y 坐标(左侧) |
w | 虚拟键的宽度 |
h | 虚拟键的高度 |
keycode | 触摸此区域应触发哪个键盘按键事件 |
index of virtual key(虚拟键索引)
global.Left = virtual_key_add(32, 32, 64, 64, vk_left);
上面的代码创建了一个 64 x 64 像素的虚拟键,位于屏幕上 (32,32),触摸时会触发 vk_left 事件,并将该虚拟键的索引分配给全局变量。